A) Field of the Invention
The present invention relates to an image transmitter, and more particularly to an image transmitter for transmission of moving images or the like which variable-length compresses input image data and sequentially transmits compressed image information.
B) Description of the Related Art
Digital image information is widely used because of propagation of digital cameras. Image information has a large information quantity so that data compression processing is performed for data storage and communications. JPEG and the like are prevailing as compression processing for image information. Data compression processing of JPEG is performed by using pixel groups of 8×8, 16×16 and the like as a basic unit. For 8×8 and 16×16 pixel groups, process units are 8 rows and 16 rows, respectively. This process unit is also called a macro block where appropriate. Data compression is performed after a macro block of 8 or 16 rows is input. JPEG compression outputs variable length data.
Generally, an image transmitter compresses input image data, stores the compressed coded data in a frame memory, and transmits it after necessary processes are executed. Most of application chips for receiving coded image data and decoding it for display or the like are fabricated on the assumption that a packet is made of a predetermined data number (hereinafter called a fixed data number) and a frame (fixed length frame) constituted of a predetermined number of packets (fixed packet number) is received. Since an encoding process generates variable length coded data, it cannot be transmitted unless proper processes are executed. It has been proposed that if coded data buffered in the frame memory is smaller than the predetermined data length, dummy data is added to the coded data to form a fixed length frame.
FIGS. 3A and 3B are a block diagram realizing an embodiment of JP-A-2002-247577 and its data format.
Referring to FIG. 3A, a camera 51 acquires moving image data at a predetermined time interval, and sequentially inputs it to an image encoder 52. The image encoder 52 encodes (digitalizes) the input moving image data of each macro block and variable-length encodes it to remove redundancy. Moving image data variable-length encoded by the image encoder 52 is sent to a frame separator circuit 53 via a data line Ii at a transmission rate varying at each moving image (frame) data. The frame separator circuit 53 forms a frame having a predetermined constant data length from the input moving image data varying its data length (having a different data length) each time it is input, and outputs the frame to a data line Iii.
FIG. 3B shows a frame format having a constant data length. One frame is constituted of T bytes. A top field includes a sync word SW of one byte and a valid data number BN of one byte, of moving image data. Therefore, the remaining number of bytes is T−2. If the moving image data 63 has x bytes, dummy data 64 of T−x−2 is added. In this manner, a frame having a constant data length T is formed by adding the dummy data. If the data length of moving image data is longer than the data length capable of being inserted in one frame, the moving image data in excess of the constant data length is discarded. A modulator 54 modulates an input frame by a predetermined modulation scheme and sends it out to a transmission line at a constant transmission rate.
A demodulator 55 receives a frame transmitted via the transmission line, demodulates it, and supplies it to a data reproduction circuit 56 via a data line IIi. The data reproduction circuit 56 performs frame synchronization by detecting the sync word SW from each input frame, and detects the valid data number BN from each received frame. The data reproduction circuit 56 extracts moving image data 63 of the valid data number BN from the frame data excluding the sync word SW and valid data number BN. The extracted moving image data 63 is supplied to an image decoder 57 via a data line IIii. The image decoder 57 decodes moving image data and sends decoded moving image data to a monitor 58. The monitor 58 displays the moving image.
A frame memory is used for buffering coded data of one frame and adding dummy data to form frame data of a constant length. A data amount of image data of one frame is large not negligible even if the image data is compressed data, and the capacity of the frame memory is not negligible.